from autogen import AssistantAgent, UserProxyAgent, Dialogue

assistant = AssistantAgent(name="Assistant")
user = UserProxyAgent(name="User")

dialogue = Dialogue(agents=[assistant, user])

# 用户提出问题
user_message = "请帮我写一个计算阶乘的 Python 函数。"
dialogue.add_message(user, user_message)

# 助手生成代码
assistant_response = assistant.generate_code(user_message)
dialogue.add_message(assistant, assistant_response)

# 用户执行代码并返回结果
exec(assistant_response)
result = factorial(5)  # 假设助手生成了一个名为 factorial 的函数
user_feedback = f"函数执行成功，5 的阶乘是 {result}。"
dialogue.add_message(user, user_feedback)

dialogue.run()
